[INFO] fetching crate kodik-parser 2.1.0...
[INFO] testing kodik-parser-2.1.0 against try#0abe69e6c16114311cc2700e972492e64d69c28f for pr-154065-1
[INFO] extracting crate kodik-parser 2.1.0 into /workspace/builds/worker-7-tc2/source
[INFO] started tweaking crates.io crate kodik-parser 2.1.0
[INFO] finished tweaking crates.io crate kodik-parser 2.1.0
[INFO] tweaked toml for crates.io crate kodik-parser 2.1.0 written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate kodik-parser 2.1.0 on toolchain 0abe69e6c16114311cc2700e972492e64d69c28f
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate kodik-parser 2.1.0 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 79b6045e0a021cd9e676bf01695425002c58eb891b1c49659cc1af1a1263642c
[INFO] running `Command { std: "docker" "start" "-a" "79b6045e0a021cd9e676bf01695425002c58eb891b1c49659cc1af1a1263642c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "79b6045e0a021cd9e676bf01695425002c58eb891b1c49659cc1af1a1263642c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "79b6045e0a021cd9e676bf01695425002c58eb891b1c49659cc1af1a1263642c", kill_on_drop: false }`
[INFO] [stdout] 79b6045e0a021cd9e676bf01695425002c58eb891b1c49659cc1af1a1263642c
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 6d97d5fcb12c0820ee721c2f2a3695f28a0b24f82c81152caa399369efa2a98c
[INFO] running `Command { std: "docker" "start" "-a" "6d97d5fcb12c0820ee721c2f2a3695f28a0b24f82c81152caa399369efa2a98c", kill_on_drop: false }`
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling ua_generator v0.5.53
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling kodik-parser v2.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: static `SHIFT` is never used
[INFO] [stdout]  --> src/decoder.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | static SHIFT: AtomicU8 = AtomicU8::new(0);
[INFO] [stdout]   |        ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `decode_links` is never used
[INFO] [stdout]  --> src/decoder.rs:9:8
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub fn decode_links(kodik_response: &mut KodikResponse) -> Result<(), KodikError> {
[INFO] [stdout]   |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `decode_link` is never used
[INFO] [stdout]   --> src/decoder.rs:41:4
[INFO] [stdout]    |
[INFO] [stdout] 41 | fn decode_link(src: &str) -> Result<String, KodikError> {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `try_decode` is never used
[INFO] [stdout]   --> src/decoder.rs:60:4
[INFO] [stdout]    |
[INFO] [stdout] 60 | fn try_decode(src: &str, shift: u8) -> Result<String, KodikError> {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `caesar_cipher` is never used
[INFO] [stdout]   --> src/decoder.rs:70:4
[INFO] [stdout]    |
[INFO] [stdout] 70 | fn caesar_cipher(text: &str, shift: u8) -> String {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `b64` is never used
[INFO] [stdout]   --> src/decoder.rs:86:8
[INFO] [stdout]    |
[INFO] [stdout] 86 | pub fn b64(input: &str) -> Result<String, KodikError> {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `VIDEO_INFO_ENDPOINT` is never used
[INFO] [stdout]   --> src/parser.rs:10:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub static VIDEO_INFO_ENDPOINT: RwLock<String> = RwLock::new(String::new());
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_domain` is never used
[INFO] [stdout]   --> src/parser.rs:56:8
[INFO] [stdout]    |
[INFO] [stdout] 56 | pub fn get_domain(url: &str) -> Result<&str, KodikError> {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extract_video_info` is never used
[INFO] [stdout]   --> src/parser.rs:68:8
[INFO] [stdout]    |
[INFO] [stdout] 68 | pub fn extract_video_info(response_text: &'_ str) -> Result<VideoInfo<'_>, KodikError> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extract_player_url` is never used
[INFO] [stdout]    --> src/parser.rs:114:8
[INFO] [stdout]     |
[INFO] [stdout] 114 | pub fn extract_player_url(domain: &str, response_text: &str) -> Result<String, KodikError> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_api_endpoint` is never used
[INFO] [stdout]    --> src/parser.rs:129:8
[INFO] [stdout]     |
[INFO] [stdout] 129 | pub fn get_api_endpoint(kodik_response_text: &str) -> Result<String, KodikError> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `spoof_random_ua` is never used
[INFO] [stdout]  --> src/util.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn spoof_random_ua() -> &'static str {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 7.39s
[INFO] running `Command { std: "docker" "inspect" "6d97d5fcb12c0820ee721c2f2a3695f28a0b24f82c81152caa399369efa2a98c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6d97d5fcb12c0820ee721c2f2a3695f28a0b24f82c81152caa399369efa2a98c", kill_on_drop: false }`
[INFO] [stdout] 6d97d5fcb12c0820ee721c2f2a3695f28a0b24f82c81152caa399369efa2a98c
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 56830b5bbe13ed50d83006327d45d249984ed76ed629c43a4f3c41172a7344f2
[INFO] running `Command { std: "docker" "start" "-a" "56830b5bbe13ed50d83006327d45d249984ed76ed629c43a4f3c41172a7344f2", kill_on_drop: false }`
[INFO] [stderr]    Compiling itoa v1.0.17
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling tokio-macros v2.6.1
[INFO] [stderr]    Compiling tokio v1.50.0
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling kodik-parser v2.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: static `SHIFT` is never used
[INFO] [stdout]  --> src/decoder.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | static SHIFT: AtomicU8 = AtomicU8::new(0);
[INFO] [stdout]   |        ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `decode_links` is never used
[INFO] [stdout]  --> src/decoder.rs:9:8
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub fn decode_links(kodik_response: &mut KodikResponse) -> Result<(), KodikError> {
[INFO] [stdout]   |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `decode_link` is never used
[INFO] [stdout]   --> src/decoder.rs:41:4
[INFO] [stdout]    |
[INFO] [stdout] 41 | fn decode_link(src: &str) -> Result<String, KodikError> {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `try_decode` is never used
[INFO] [stdout]   --> src/decoder.rs:60:4
[INFO] [stdout]    |
[INFO] [stdout] 60 | fn try_decode(src: &str, shift: u8) -> Result<String, KodikError> {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `caesar_cipher` is never used
[INFO] [stdout]   --> src/decoder.rs:70:4
[INFO] [stdout]    |
[INFO] [stdout] 70 | fn caesar_cipher(text: &str, shift: u8) -> String {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `b64` is never used
[INFO] [stdout]   --> src/decoder.rs:86:8
[INFO] [stdout]    |
[INFO] [stdout] 86 | pub fn b64(input: &str) -> Result<String, KodikError> {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `VIDEO_INFO_ENDPOINT` is never used
[INFO] [stdout]   --> src/parser.rs:10:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub static VIDEO_INFO_ENDPOINT: RwLock<String> = RwLock::new(String::new());
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_domain` is never used
[INFO] [stdout]   --> src/parser.rs:56:8
[INFO] [stdout]    |
[INFO] [stdout] 56 | pub fn get_domain(url: &str) -> Result<&str, KodikError> {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extract_video_info` is never used
[INFO] [stdout]   --> src/parser.rs:68:8
[INFO] [stdout]    |
[INFO] [stdout] 68 | pub fn extract_video_info(response_text: &'_ str) -> Result<VideoInfo<'_>, KodikError> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extract_player_url` is never used
[INFO] [stdout]    --> src/parser.rs:114:8
[INFO] [stdout]     |
[INFO] [stdout] 114 | pub fn extract_player_url(domain: &str, response_text: &str) -> Result<String, KodikError> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_api_endpoint` is never used
[INFO] [stdout]    --> src/parser.rs:129:8
[INFO] [stdout]     |
[INFO] [stdout] 129 | pub fn get_api_endpoint(kodik_response_text: &str) -> Result<String, KodikError> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `spoof_random_ua` is never used
[INFO] [stdout]  --> src/util.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn spoof_random_ua() -> &'static str {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `VIDEO_INFO_ENDPOINT` is never used
[INFO] [stdout]   --> src/parser.rs:10:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub static VIDEO_INFO_ENDPOINT: RwLock<String> = RwLock::new(String::new());
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 9.89s
[INFO] running `Command { std: "docker" "inspect" "56830b5bbe13ed50d83006327d45d249984ed76ed629c43a4f3c41172a7344f2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "56830b5bbe13ed50d83006327d45d249984ed76ed629c43a4f3c41172a7344f2", kill_on_drop: false }`
[INFO] [stdout] 56830b5bbe13ed50d83006327d45d249984ed76ed629c43a4f3c41172a7344f2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] a79db55da0e6dd31c55f05c023aef51025046a5a35677d068a3c7a32770c9c99
[INFO] running `Command { std: "docker" "start" "-a" "a79db55da0e6dd31c55f05c023aef51025046a5a35677d068a3c7a32770c9c99", kill_on_drop: false }`
[INFO] [stderr] warning: static `SHIFT` is never used
[INFO] [stderr]  --> src/decoder.rs:7:8
[INFO] [stderr]   |
[INFO] [stderr] 7 | static SHIFT: AtomicU8 = AtomicU8::new(0);
[INFO] [stderr]   |        ^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function `decode_links` is never used
[INFO] [stderr]  --> src/decoder.rs:9:8
[INFO] [stderr]   |
[INFO] [stderr] 9 | pub fn decode_links(kodik_response: &mut KodikResponse) -> Result<(), KodikError> {
[INFO] [stderr]   |        ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `decode_link` is never used
[INFO] [stderr]   --> src/decoder.rs:41:4
[INFO] [stderr]    |
[INFO] [stderr] 41 | fn decode_link(src: &str) -> Result<String, KodikError> {
[INFO] [stderr]    |    ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `try_decode` is never used
[INFO] [stderr]   --> src/decoder.rs:60:4
[INFO] [stderr]    |
[INFO] [stderr] 60 | fn try_decode(src: &str, shift: u8) -> Result<String, KodikError> {
[INFO] [stderr]    |    ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `caesar_cipher` is never used
[INFO] [stderr]   --> src/decoder.rs:70:4
[INFO] [stderr]    |
[INFO] [stderr] 70 | fn caesar_cipher(text: &str, shift: u8) -> String {
[INFO] [stderr]    |    ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `b64` is never used
[INFO] [stderr]   --> src/decoder.rs:86:8
[INFO] [stderr]    |
[INFO] [stderr] 86 | pub fn b64(input: &str) -> Result<String, KodikError> {
[INFO] [stderr]    |        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: static `VIDEO_INFO_ENDPOINT` is never used
[INFO] [stderr]   --> src/parser.rs:10:12
[INFO] [stderr]    |
[INFO] [stderr] 10 | pub static VIDEO_INFO_ENDPOINT: RwLock<String> = RwLock::new(String::new());
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `get_domain` is never used
[INFO] [stderr]   --> src/parser.rs:56:8
[INFO] [stderr]    |
[INFO] [stderr] 56 | pub fn get_domain(url: &str) -> Result<&str, KodikError> {
[INFO] [stderr]    |        ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `extract_video_info` is never used
[INFO] [stderr]   --> src/parser.rs:68:8
[INFO] [stderr]    |
[INFO] [stderr] 68 | pub fn extract_video_info(response_text: &'_ str) -> Result<VideoInfo<'_>, KodikError> {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `extract_player_url` is never used
[INFO] [stderr]    --> src/parser.rs:114:8
[INFO] [stderr]     |
[INFO] [stderr] 114 | pub fn extract_player_url(domain: &str, response_text: &str) -> Result<String, KodikError> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `get_api_endpoint` is never used
[INFO] [stderr]    --> src/parser.rs:129:8
[INFO] [stderr]     |
[INFO] [stderr] 129 | pub fn get_api_endpoint(kodik_response_text: &str) -> Result<String, KodikError> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `spoof_random_ua` is never used
[INFO] [stderr]  --> src/util.rs:5:8
[INFO] [stderr]   |
[INFO] [stderr] 5 | pub fn spoof_random_ua() -> &'static str {
[INFO] [stderr]   |        ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `kodik-parser` (lib) generated 12 warnings
[INFO] [stderr] warning: static `VIDEO_INFO_ENDPOINT` is never used
[INFO] [stderr]   --> src/parser.rs:10:12
[INFO] [stderr]    |
[INFO] [stderr] 10 | pub static VIDEO_INFO_ENDPOINT: RwLock<String> = RwLock::new(String::new());
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `kodik-parser` (lib test) generated 1 warning
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.14s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/kodik_parser-71a44964df1821bd)
[INFO] [stdout] 
[INFO] [stdout] running 14 tests
[INFO] [stdout] test decoder::tests::b64_test ... ok
[INFO] [stdout] test decoder::tests::try_decoding ... ok
[INFO] [stdout] test decoder::tests::decoding_links ... ok
[INFO] [stdout] test scraper::tests::kodik_response_deserialization ... ok
[INFO] [stdout] test util::tests::random_agent_is_not_always_same ... ok
[INFO] [stdout] test scraper::tests::link_deserialization ... ok
[INFO] [stdout] test scraper::tests::links_deserialization ... ok
[INFO] [stdout] test parser::tests::getting_domain ... ok
[INFO] [stdout] test parser::tests::extracting_video_info ... ok
[INFO] [stdout] test parser::tests::getting_player_url ... ok
[INFO] [stdout] test parser::tests::video_info_serializing ... ok
[INFO] [stdout] test decoder::tests::caesar_cipher_test ... ok
[INFO] [stdout] test parser::tests::getting_api_endpoint ... ok
[INFO] [stdout] test decoder::tests::decoding_link ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 14 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.09s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests kodik_parser
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "a79db55da0e6dd31c55f05c023aef51025046a5a35677d068a3c7a32770c9c99", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a79db55da0e6dd31c55f05c023aef51025046a5a35677d068a3c7a32770c9c99", kill_on_drop: false }`
[INFO] [stdout] a79db55da0e6dd31c55f05c023aef51025046a5a35677d068a3c7a32770c9c99
